home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Monster Media 1994 #2
/
Monster Media No. 2 (Monster Media)(1994).ISO
/
pcboard
/
gnstst11.zip
/
GNS-TEST.PPE
(
.txt
)
< prev
next >
Wrap
PCBoard Programming Language Executable
|
1994-06-21
|
17KB
|
958 lines
;------------------------------------------------------------------------------
; .ss.
; `²²'
; .,sS$Ss,,s$ .,sS$$$Ss. .,sS$Ss,,s$ .ss. .sSs.
; .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
; $$$' .$$$' $$$²Sçsµ²' .$$$' .$$$'.$$$' .$$$' `$$b.
; $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$' ;$$$
; `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
; .sS²°$$$²²°"' d²°'
; .$$² .$$'
; $$$.,d$$'
; `²S$$S²'
;------------------------------------------------------------------------------
; P.P.L.X. 2.OO (C)1996 - Lone Runner / AEGiS CoRP'96
;------------------------------------------------------------------------------
; PPE 2.OO (plain) - Analysis ON - Postprocessing ON
;------------------------------------------------------------------------------
Integer INTEGER001
Integer TINTEGER002(9)
Integer INTEGER003
Integer INTEGER004
Integer TINTEGER005(9)
Integer TINTEGER006(45)
Integer TINTEGER007(45)
String STRING001
String STRING002
String STRING003
String STRING004
String STRING005
String STRING006
String STRING007
String STRING008
String TSTRING009(9)
String TSTRING010(9)
String STRING011
String TSTRING012(9)
String TSTRING013(9)
String TSTRING014(9)
String TSTRING015(9)
String STRING016
String STRING017
String STRING018
String STRING019
String STRING020
String STRING021
String STRING022
String STRING023
String STRING024
String STRING025
String STRING026
String STRING027
String STRING028
String TSTRING029(45)
String TSTRING030(45)
String TSTRING031(45)
String STRING032
String STRING033
String STRING034
String STRING035
;------------------------------------------------------------------------------
:LABEL001
Print "@X0F"
Cls
PrintLn "@CLS@@X07@X0F GENES@X08i@X0FS PPE Tester"
PrintLn "┌─────────@X07───────────@X08───────────────── ─────────── ───────── ─ ─ - ·· ·"
PrintLn "@X0F│ @X08 [@X0FALT-W@X08] @X0FConfigure @X08[@X0FALT-Q@X08] @X0FFull Screen @X08[@X0F1 - 9@X08] @X0FQuicky Tests"
PrintLn "│─────────@X07───────────@X08───────────────── ─────────── ─────────── ─ ──────· ·"
PrintLn "@X0F│ PPE And Path To PPE : @X08[ ]"
PrintLn "@X0F└─────────@X07───────────@X08───────────────── ─────────── ─────────-─ ─ ───--─ ·"
Print "@X0F"
AnsiPos 26, 5
STRING023 = "@X0F"
STRING018 = 25
STRING019 = 5
AnsiPos STRING018, STRING019
STRING020 = 25
STRING021 = 1
:LABEL002
STRING022 = Inkey()
If (STRING022 <> "") Goto LABEL003
Goto LABEL002
:LABEL003
If (((((((((STRING022 == "1") || (STRING022 == "2")) || (STRING022 == "3")) || (STRING022 == "4")) || (STRING022 == "5")) || (STRING022 == "6")) || (STRING022 == "7")) || (STRING022 == "8")) || (STRING022 == "9")) Then
Call ReadLine(PPEPath() + "TEST.DAT", STRING022)
End
Endif
If (STRING022 == Chr(27)) End
If (STRING022 == Chr(13)) Goto LABEL004
If (STRING022 == "ALT W") Goto LABEL005
If (STRING022 == "ALT Q") Goto LABEL040
If (Left(STRING022, 3) == "ALT") Goto LABEL002
If (Left(STRING022, 3) == "CTR") Goto LABEL002
If (STRING022 == "INS") Goto LABEL002
If (STRING022 == "BADKEY") Goto LABEL002
If (STRING022 == "RIGHT") Goto LABEL002
If (STRING022 == "LEFT") Goto LABEL002
If (STRING022 == "DOWN") Goto LABEL002
If (STRING022 == "DEL") Goto LABEL002
If (STRING022 == "END") Goto LABEL002
If (STRING022 == "HOME") Goto LABEL002
If (STRING022 == "PGUP") Goto LABEL002
If (STRING022 == "PGDN") Goto LABEL002
If (STRING022 == Chr(8)) Then
If (STRING020 == 25) Goto LABEL002
AnsiPos STRING020, STRING019
Print " "
STRING020 = STRING020 - 1
Goto LABEL002
Endif
If (STRING020 == 50) Goto LABEL002
STRING024 = STRING023 + STRING022
STRING020 = STRING020 + 1
AnsiPos STRING020, STRING019
Print STRING024
Goto LABEL002
:LABEL004
STRING011 = ScrText(26, 5, 50, 0)
STRING011 = RTrim(STRING011, "]")
STRING011 = Trim(STRING011, "")
Print "@X0F"
Call STRING011
Print "@X0F"
Cls
End
:LABEL005
PrintLn ""
PrintLn "@X07@X0F┌─────────@X07───────────@X08───────────────── ─────────── ───────── ─ ─ - ·· ·"
PrintLn "@X0F│ @X08[@X0FSPACE@X08] @X0FUp @X08[@X0F@X08] @X0FDown @X08[@X0F@X08] @X0FLeft @X08[@X0F@X08] @X0FRight"
PrintLn "│─────────@X07───────────@X08───────────────── ─────────── ─────────── ─ ──────· ·"
PrintLn "@X0F│ o1) @X08│"
PrintLn "@X0F│ o2) @X08│"
PrintLn "@X0F│ o3) @X08│"
PrintLn "@X0F│ o4) @X08│"
PrintLn "@X0F│ o5) @X08│"
PrintLn "@X0F│ o6) @X08│"
PrintLn "@X0F│ o7) @X08│"
PrintLn "@X0F│ o8) @X08│"
PrintLn "@X0F│ o9) @X08│"
PrintLn "@X0F└─────────@X07───────────@X08───────────────── ─────────── ─────────-─ ─ ───--─ ·"
:LABEL006
FOpen 2, PPEPath() + "config.dat", 2, 0
For INTEGER004 = 1 To 9
FGet 2, TSTRING009(INTEGER004)
TSTRING009(INTEGER004) = Upper(TSTRING009(INTEGER004))
FGet 2, TSTRING010(INTEGER004)
TSTRING010(INTEGER004) = Upper(TSTRING010(INTEGER004))
Next
FClose 2
Sort TSTRING009, TINTEGER002
Sort TSTRING010, TINTEGER002
For STRING016 = 1 To 9
INTEGER001 = STRING016
TSTRING012(STRING016) = 7
TSTRING013(STRING016) = INTEGER001 + 8
TSTRING014(STRING016) = 23
TSTRING015(STRING016) = INTEGER001 + 8
Next
Sort TSTRING012, TINTEGER002
Sort TSTRING014, TINTEGER002
Sort TSTRING013, TINTEGER002
Sort TSTRING015, TINTEGER002
For INTEGER003 = 1 To 9
If (INTEGER003 > 1) Goto LABEL007
AnsiPos TSTRING012(INTEGER003), TSTRING013(INTEGER003)
Print "@X7F" + TSTRING009(INTEGER003)
AnsiPos TSTRING014(INTEGER003), TSTRING015(INTEGER003)
Print "@X0F" + TSTRING010(INTEGER003)
Continue
:LABEL007
AnsiPos TSTRING012(INTEGER003), TSTRING013(INTEGER003)
Print "@X0F" + TSTRING009(INTEGER003)
AnsiPos TSTRING014(INTEGER003), TSTRING015(INTEGER003)
Print "@X0F" + TSTRING010(INTEGER003)
Next
STRING004 = "1"
STRING001 = "1"
:LABEL008
STRING005 = STRING007
STRING006 = STRING008
STRING007 = STRING004
STRING008 = STRING001
STRING017 = Inkey()
If (STRING017 <> "") Goto LABEL009
Goto LABEL008
:LABEL009
If (STRING017 == Chr(27)) Then
Print "@X0F"
Cls
Goto LABEL001
Endif
If (STRING017 == Chr(13)) Then
Goto LABEL029
Endif
Select Case (STRING017)
Case "DOWN"
STRING004 = STRING004 + 1
If (STRING004 == 10) STRING004 = 1
Case " "
STRING004 = STRING004 - 1
If (STRING004 == 0) STRING004 = 9
Case "LEFT"
STRING001 = STRING001 - 1
If (STRING001 == 0) STRING001 = 2
Case "RIGHT"
STRING001 = STRING001 + 1
If (STRING001 == 3) STRING001 = 1
Case Else
If (((((((((STRING017 == "1") || (STRING017 == "2")) || (STRING017 == "3")) || (STRING017 == "4")) || (STRING017 == "5")) || (STRING017 == "6")) || (STRING017 == "7")) || (STRING017 == "8")) || (STRING017 == "9")) Then
If (STRING017 == "1") Then
STRING004 = STRING017
Goto LABEL011
Endif
If (STRING017 == "2") Then
STRING004 = STRING017
Goto LABEL012
Endif
If (STRING017 == "3") Then
STRING004 = STRING017
Goto LABEL013
Endif
If (STRING017 == "4") Then
STRING004 = STRING017
Goto LABEL014
Endif
If (STRING017 == "5") Then
STRING004 = STRING017
Goto LABEL015
Endif
If (STRING017 == "6") Then
STRING004 = STRING017
Goto LABEL016
Endif
If (STRING017 == "7") Then
STRING004 = STRING017
Goto LABEL017
Endif
If (STRING017 == "8") Then
STRING004 = STRING017
Goto LABEL018
Endif
If (STRING017 == "9") Then
STRING004 = STRING017
Goto LABEL019
Endif
Endif
Goto LABEL008
End Select
Gosub LABEL010
If (STRING004 == "1") Goto LABEL011
If (STRING004 == "2") Goto LABEL012
If (STRING004 == "3") Goto LABEL013
If (STRING004 == "4") Goto LABEL014
If (STRING004 == "5") Goto LABEL015
If (STRING004 == "6") Goto LABEL016
If (STRING004 == "7") Goto LABEL017
If (STRING004 == "8") Goto LABEL018
If (STRING004 == "9") Goto LABEL019
Goto LABEL008
:LABEL010
If (STRING005 == "1") Gosub LABEL020
If (STRING005 == "2") Gosub LABEL021
If (STRING005 == "3") Gosub LABEL022
If (STRING005 == "4") Gosub LABEL023
If (STRING005 == "5") Gosub LABEL024
If (STRING005 == "6") Gosub LABEL025
If (STRING005 == "7") Gosub LABEL026
If (STRING005 == "8") Gosub LABEL027
If (STRING005 == "9") Gosub LABEL028
Return
:LABEL011
If (STRING001 == "1") Then
AnsiPos TSTRING012(1), TSTRING013(1)
Print "@X7F" + TSTRING009(1)
Endif
If (STRING001 == "2") Then
AnsiPos TSTRING014(1), TSTRING015(1)
Print "@X7F" + TSTRING010(1)
Endif
Goto LABEL008
:LABEL012
If (STRING001 == "1") Then
AnsiPos TSTRING012(2), TSTRING013(2)
Print "@X7F" + TSTRING009(2)
Endif
If (STRING001 == "2") Then
AnsiPos TSTRING014(2), TSTRING015(2)
Print "@X7F" + TSTRING010(2)
Endif
Goto LABEL008
:LABEL013
If (STRING001 == "1") Then
AnsiPos TSTRING012(3), TSTRING013(3)
Print "@X7F" + TSTRING009(3)
Endif
If (STRING001 == "2") Then
AnsiPos TSTRING014(3), TSTRING015(3)
Print "@X7F" + TSTRING010(3)
Endif
Goto LABEL008
:LABEL014
If (STRING001 == "1") Then
AnsiPos TSTRING012(4), TSTRING013(4)
Print "@X7F" + TSTRING009(4)
Endif
If (STRING001 == "2") Then
AnsiPos TSTRING014(4), TSTRING015(4)
Print "@X7F" + TSTRING010(4)
Endif
Goto LABEL008
:LABEL015
If (STRING001 == "1") Then
AnsiPos TSTRING012(5), TSTRING013(5)
Print "@X7F" + TSTRING009(5)
Endif
If (STRING001 == "2") Then
AnsiPos TSTRING014(5), TSTRING015(5)
Print "@X7F" + TSTRING010(5)
Endif
Goto LABEL008
:LABEL016
If (STRING001 == "1") Then
AnsiPos TSTRING012(6), TSTRING013(6)
Print "@X7F" + TSTRING009(6)
Endif
If (STRING001 == "2") Then
AnsiPos TSTRING014(6), TSTRING015(6)
Print "@X7F" + TSTRING010(6)
Endif
Goto LABEL008
:LABEL017
If (STRING001 == "1") Then
AnsiPos TSTRING012(7), TSTRING013(7)
Print "@X7F" + TSTRING009(7)
Endif
If (STRING001 == "2") Then
AnsiPos TSTRING014(7), TSTRING015(7)
Print "@X7F" + TSTRING010(7)
Endif
Goto LABEL008
:LABEL018
If (STRING001 == "1") Then
AnsiPos TSTRING012(8), TSTRING013(8)
Print "@X7F" + TSTRING009(8)
Endif
If (STRING001 == "2") Then
AnsiPos TSTRING014(8), TSTRING015(8)
Print "@X7F" + TSTRING010(8)
Endif
Goto LABEL008
:LABEL019
If (STRING001 == "1") Then
AnsiPos TSTRING012(9), TSTRING013(9)
Print "@X7F" + TSTRING009(9)
Endif
If (STRING001 == "2") Then
AnsiPos TSTRING014(9), TSTRING015(9)
Print "@X7F" + TSTRING010(9)
Endif
Goto LABEL008
:LABEL020
If (STRING006 == "1") Then
AnsiPos TSTRING012(1), TSTRING013(1)
Print "@X0F" + TSTRING009(1)
Endif
If (STRING006 == "2") Then
AnsiPos TSTRING014(1), TSTRING015(1)
Print "@X0F" + TSTRING010(1)
Endif
Return
:LABEL021
If (STRING006 == "1") Then
AnsiPos TSTRING012(2), TSTRING013(2)
Print "@X0F" + TSTRING009(2)
Endif
If (STRING006 == "2") Then
AnsiPos TSTRING014(2), TSTRING015(2)
Print "@X0F" + TSTRING010(2)
Endif
Return
:LABEL022
If (STRING006 == "1") Then
AnsiPos TSTRING012(3), TSTRING013(3)
Print "@X0F" + TSTRING009(3)
Endif
If (STRING006 == "2") Then
AnsiPos TSTRING014(3), TSTRING015(3)
Print "@X0F" + TSTRING010(3)
Endif
Return
:LABEL023
If (STRING006 == "1") Then
AnsiPos TSTRING012(4), TSTRING013(4)
Print "@X0F" + TSTRING009(4)
Endif
If (STRING006 == "2") Then
AnsiPos TSTRING014(4), TSTRING015(4)
Print "@X0F" + TSTRING010(4)
Endif
Return
:LABEL024
If (STRING006 == "1") Then
AnsiPos TSTRING012(5), TSTRING013(5)
Print "@X0F" + TSTRING009(5)
Endif
If (STRING006 == "2") Then
AnsiPos TSTRING014(5), TSTRING015(5)
Print "@X0F" + TSTRING010(5)
Endif
Return
:LABEL025
If (STRING006 == "1") Then
AnsiPos TSTRING012(6), TSTRING013(6)
Print "@X0F" + TSTRING009(6)
Endif
If (STRING006 == "2") Then
AnsiPos TSTRING014(6), TSTRING015(6)
Print "@X0F" + TSTRING010(6)
Endif
Return
:LABEL026
If (STRING006 == "1") Then
AnsiPos TSTRING012(7), TSTRING013(7)
Print "@X0F" + TSTRING009(7)
Endif
If (STRING006 == "2") Then
AnsiPos TSTRING014(7), TSTRING015(7)
Print "@X0F" + TSTRING010(7)
Endif
Return
:LABEL027
If (STRING006 == "1") Then
AnsiPos TSTRING012(8), TSTRING013(8)
Print "@X0F" + TSTRING009(8)
Endif
If (STRING006 == "2") Then
AnsiPos TSTRING014(8), TSTRING015(8)
Print "@X0F" + TSTRING010(8)
Endif
Return
:LABEL028
If (STRING006 == "1") Then
AnsiPos TSTRING012(9), TSTRING013(9)
Print "@X0F" + TSTRING009(9)
Endif
If (STRING006 == "2") Then
AnsiPos TSTRING014(9), TSTRING015(9)
Print "@X0F" + TSTRING010(9)
Endif
Return
:LABEL029
If (STRING004 == "1") Goto LABEL030
If (STRING004 == "2") Goto LABEL031
If (STRING004 == "3") Goto LABEL032
If (STRING004 == "4") Goto LABEL033
If (STRING004 == "5") Goto LABEL034
If (STRING004 == "6") Goto LABEL035
If (STRING004 == "7") Goto LABEL036
If (STRING004 == "8") Goto LABEL037
If (STRING004 == "9") Goto LABEL038
Goto LABEL008
:LABEL030
If (STRING001 == "1") Then
AnsiPos TSTRING012(1), TSTRING013(1)
InputStr "_", STRING003, 15, 12, Mask_Ascii(), 16
Endif
If (STRING001 == "2") Then
AnsiPos TSTRING014(1), TSTRING015(1)
InputStr "_", STRING002, 15, 55, Mask_Ascii(), 16
Endif
Goto LABEL039
:LABEL031
If (STRING001 == "1") Then
AnsiPos TSTRING012(2), TSTRING013(2)
InputStr "_", STRING003, 15, 12, Mask_Ascii(), 16
Endif
If (STRING001 == "2") Then
AnsiPos TSTRING014(2), TSTRING015(2)
InputStr "_", STRING002, 15, 55, Mask_Ascii(), 16
Endif
Goto LABEL039
:LABEL032
If (STRING001 == "1") Then
AnsiPos TSTRING012(3), TSTRING013(3)
InputStr "_", STRING003, 15, 12, Mask_Ascii(), 16
Endif
If (STRING001 == "2") Then
AnsiPos TSTRING014(3), TSTRING015(3)
InputStr "_", STRING002, 15, 55, Mask_Ascii(), 16
Endif
Goto LABEL039
:LABEL033
If (STRING001 == "1") Then
AnsiPos TSTRING012(4), TSTRING013(4)
InputStr "_", STRING003, 15, 12, Mask_Ascii(), 16
Endif
If (STRING001 == "2") Then
AnsiPos TSTRING014(4), TSTRING015(4)
InputStr "_", STRING002, 15, 55, Mask_Ascii(), 16
Endif
Goto LABEL039
:LABEL034
If (STRING001 == "1") Then
AnsiPos TSTRING012(5), TSTRING013(5)
InputStr "_", STRING003, 15, 12, Mask_Ascii(), 16
Endif
If (STRING001 == "2") Then
AnsiPos TSTRING014(5), TSTRING015(5)
InputStr "_", STRING002, 15, 55, Mask_Ascii(), 16
Endif
Goto LABEL039
:LABEL035
If (STRING001 == "1") Then
AnsiPos TSTRING012(6), TSTRING013(6)
InputStr "_", STRING003, 15, 12, Mask_Ascii(), 16
Endif
If (STRING001 == "2") Then
AnsiPos TSTRING014(6), TSTRING015(6)
InputStr "_", STRING002, 15, 55, Mask_Ascii(), 16
Endif
Goto LABEL039
:LABEL036
If (STRING001 == "1") Then
AnsiPos TSTRING012(7), TSTRING013(7)
InputStr "_", STRING003, 15, 12, Mask_Ascii(), 16
Endif
If (STRING001 == "2") Then
AnsiPos TSTRING014(7), TSTRING015(7)
InputStr "_", STRING002, 15, 55, Mask_Ascii(), 16
Endif
Goto LABEL039
:LABEL037
If (STRING001 == "1") Then
AnsiPos TSTRING012(8), TSTRING013(8)
InputStr "_", STRING003, 15, 12, Mask_Ascii(), 16
Endif
If (STRING001 == "2") Then
AnsiPos TSTRING014(8), TSTRING015(8)
InputStr "_", STRING002, 15, 55, Mask_Ascii(), 16
Endif
Goto LABEL039
:LABEL038
If (STRING001 == "1") Then
AnsiPos TSTRING012(9), TSTRING013(9)
InputStr "_", STRING003, 15, 12, Mask_Ascii(), 16
Endif
If (STRING001 == "2") Then
AnsiPos TSTRING014(9), TSTRING015(9)
InputStr "_", STRING002, 15, 55, Mask_Ascii(), 16
Endif
:LABEL039
If (STRING004 == 1) Then
If (STRING003 <> "") Then
TSTRING009(1) = STRING003
Endif
If (STRING002 <> "") Then
TSTRING010(1) = STRING002
Endif
Endif
If (STRING004 == 2) Then
If (STRING003 <> "") Then
TSTRING009(2) = STRING003
Endif
If (STRING002 <> "") Then
TSTRING010(2) = STRING002
Endif
Endif
If (STRING004 == 3) Then
If (STRING003 <> "") Then
TSTRING009(3) = STRING003
Endif
If (STRING002 <> "") Then
TSTRING010(3) = STRING002
Endif
Endif
If (STRING004 == 4) Then
If (STRING003 <> "") Then
TSTRING009(4) = STRING003
Endif
If (STRING002 <> "") Then
TSTRING010(4) = STRING002
Endif
Endif
If (STRING004 == 5) Then
If (STRING003 <> "") Then
TSTRING009(5) = STRING003
Endif
If (STRING002 <> "") Then
TSTRING010(5) = STRING002
Endif
Endif
If (STRING004 == 6) Then
If (STRING003 <> "") Then
TSTRING009(6) = STRING003
Endif
If (STRING002 <> "") Then
TSTRING010(6) = STRING002
Endif
Endif
If (STRING004 == 7) Then
If (STRING003 <> "") Then
TSTRING009(7) = STRING003
Endif
If (STRING002 <> "") Then
TSTRING010(7) = STRING002
Endif
Endif
If (STRING004 == 8) Then
If (STRING003 <> "") Then
TSTRING009(8) = STRING003
Endif
If (STRING002 <> "") Then
TSTRING010(8) = STRING002
Endif
Endif
If (STRING004 == 9) Then
If (STRING003 <> "") Then
TSTRING009(9) = STRING003
Endif
If (STRING002 <> "") Then
TSTRING010(9) = STRING002
Endif
Endif
Sort TSTRING009, TINTEGER005
Sort TSTRING010, TINTEGER005
FCreate 4, PPEPath() + "config.dat", 2, 0
FCreate 5, PPEPath() + "TEST.DAT", 2, 0
For STRING025 = 1 To 9
FPutLn 4, TSTRING009(STRING025)
If (TSTRING010(STRING025) == "") Continue
If (Right(TSTRING010(STRING025), 1) == "\") Then
FPutLn 4, TSTRING010(STRING025)
FPutLn 5, TSTRING010(STRING025) + TSTRING009(STRING025)
Continue
Endif
FPutLn 4, TSTRING010(STRING025) + "\"
FPutLn 5, TSTRING010(STRING025) + "\" + TSTRING009(STRING025)
Next
FClose 4
FClose 5
PrintLn "@CLS@@X07@X0F GENES@X08i@X0FS PPE Tester"
PrintLn "┌─────────@X07───────────@X08───────────────── ─────────── ───────── ─ ─ - ·· ·"
PrintLn "@X0F│ @X08[@X0FShift-C@X08] @X0FConfigure @X08[@X0FShift-F@X08] @X0FFull Screen @X08[@X0F1 - 9@X08] @X0FQuicky Tests"
PrintLn "│─────────@X07───────────@X08───────────────── ─────────── ─────────── ─ ──────· ·"
PrintLn "@X0F│ PPE And Path To PPE : @X08[ ]"
PrintLn "@X0F└─────────@X07───────────@X08───────────────── ─────────── ─────────-─ ─ ───--─ ·"
AnsiPos 1, 6
PrintLn "@X07@X0F┌─────────@X07───────────@X08───────────────── ─────────── ───────── ─ ─ - ·· ·"
PrintLn "@X0F│ @X08[@X0FSPACE@X08] @X0FUp @X08[@X0F@X08] @X0FDown @X08[@X0F@X08] @X0FLeft @X08[@X0F@X08] @X0FRight"
PrintLn "│─────────@X07───────────@X08───────────────── ─────────── ─────────── ─ ──────· ·"
PrintLn "@X0F│ o1) @X08│"
PrintLn "@X0F│ o2) @X08│"
PrintLn "@X0F│ o3) @X08│"
PrintLn "@X0F│ o4) @X08│"
PrintLn "@X0F│ o5) @X08│"
PrintLn "@X0F│ o6) @X08│"
PrintLn "@X0F│ o7) @X08│"
PrintLn "@X0F│ o8) @X08│"
PrintLn "@X0F│ o9) @X08│"
PrintLn "@X0F└─────────@X07───────────@X08───────────────── ─────────── ─────────-─ ─ ───--─ ·"
Goto LABEL006
End
:LABEL040
Shell 1, STRING026, "DIR " + PPEPath() + "*.PPE >" + PPEPath() + "PPETEST.DAT", ""
FOpen 4, PPEPath() + "PPETEST.DAT", 2, 0
For STRING027 = 1 To 45
:LABEL041
FGet 4, STRING028
If (STRING028 == "") Then
If (STRING027 > 1) Then
Break
Endif
Endif
If (Left(STRING028, 1) == " ") Goto LABEL041
TSTRING029(STRING027) = Upper(Trim(Left(STRING028, 8), " "))
Next
Sort TSTRING029, TINTEGER006
PrintLn "@CLS@@X07@X0F GENES@X08i@X0FS PPE Tester"
PrintLn "┌─────────@X07───────────@X08───────────────── ─────────── ───────── ─ ─ - ·· ·"
PrintLn "@X0F│ @X08 [@X0FALT-W@X08] @X0FConfigure @X08[@X0FALT-Q@X08] @X0FFull Screen @X08[@X0F1 - 9@X08] @X0FQuicky Tests"
PrintLn "│─────────@X07───────────@X08───────────────── ─────────── ─────────── ─ ──────· ·"
PrintLn "@X0F│ PPE And Path To PPE : @X08[ ]"
PrintLn "@X0F└─────────@X07───────────@X08───────────────── ─────────── ─────────-─ ─ ───--─ ·"
PrintLn ""
PrintLn "@X07@X0F┌─────────@X07───────────@X08───────────────── ─────────── ───────── ─ ─ - ··"
PrintLn "@X0F│ @X08[@X0FSPACE@X08] @X0FUp @X08[@X0F@X08] @X0FDown @X08[@X0F@X08] @X0FLeft @X08[@X0F@X08] @X0FRight"
PrintLn "│─────────@X07───────────@X08───────────────── ─────────── ─────────── ─ ──────· ·"
PrintLn "@X0F│ @X08│ │ │ │ │"
PrintLn "@X0F│ @X08│ │ │ │ │"
PrintLn "@X0F│ @X08│ │ │ │ │"
PrintLn "@X0F│ @X08│ │ │ │ │"
PrintLn "@X0F│ @X08│ │ │ │ │"
PrintLn "@X0F│ @X08│ │ │ │ │"
PrintLn "@X0F│ @X08│ │ │ │ │"
PrintLn "@X0F│ @X08│ │ │ │ │"
PrintLn "@X0F│ @X08│ │ │ │ │"
PrintLn "@X0F└─────────@X07───────────@X08───────────────── ─────────── ─────────-─ ─ ───--─ ·"
TSTRING030(1) = "3"
TSTRING030(2) = "3"
TSTRING030(3) = "3"
TSTRING030(4) = "3"
TSTRING030(5) = "3"
TSTRING030(6) = "3"
TSTRING030(7) = "3"
TSTRING030(8) = "3"
TSTRING030(9) = "3"
TSTRING031(1) = "11"
TSTRING031(2) = "12"
TSTRING031(3) = "13"
TSTRING031(4) = "14"
TSTRING031(5) = "15"
TSTRING031(6) = "16"
TSTRING031(7) = "17"
TSTRING031(8) = "18"
TSTRING031(9) = "19"
TSTRING030(10) = "18"
TSTRING030(11) = "18"
TSTRING030(12) = "18"
TSTRING030(13) = "18"
TSTRING030(14) = "18"
TSTRING030(15) = "18"
TSTRING030(16) = "18"
TSTRING030(17) = "18"
TSTRING030(18) = "18"
TSTRING031(10) = "11"
TSTRING031(11) = "12"
TSTRING031(12) = "13"
TSTRING031(13) = "14"
TSTRING031(14) = "15"
TSTRING031(15) = "16"
TSTRING031(16) = "17"
TSTRING031(17) = "18"
TSTRING031(18) = "19"
TSTRING030(19) = "33"
TSTRING030(20) = "33"
TSTRING030(21) = "33"
TSTRING030(22) = "33"
TSTRING030(23) = "33"
TSTRING030(24) = "33"
TSTRING030(25) = "33"
TSTRING030(26) = "33"
TSTRING030(27) = "33"
TSTRING031(19) = "11"
TSTRING031(20) = "12"
TSTRING031(21) = "13"
TSTRING031(22) = "14"
TSTRING031(23) = "15"
TSTRING031(24) = "16"
TSTRING031(25) = "17"
TSTRING031(26) = "18"
TSTRING031(27) = "19"
TSTRING030(28) = "48"
TSTRING030(29) = "48"
TSTRING030(30) = "48"
TSTRING030(31) = "48"
TSTRING030(32) = "48"
TSTRING030(33) = "48"
TSTRING030(34) = "48"
TSTRING030(35) = "48"
TSTRING030(36) = "48"
TSTRING031(28) = "11"
TSTRING031(29) = "12"
TSTRING031(30) = "13"
TSTRING031(31) = "14"
TSTRING031(32) = "15"
TSTRING031(33) = "16"
TSTRING031(34) = "17"
TSTRING031(35) = "18"
TSTRING031(36) = "19"
TSTRING030(37) = "63"
TSTRING030(38) = "63"
TSTRING030(39) = "63"
TSTRING030(40) = "63"
TSTRING030(41) = "63"
TSTRING030(42) = "63"
TSTRING030(43) = "63"
TSTRING030(44) = "63"
TSTRING030(45) = "63"
TSTRING031(37) = "11"
TSTRING031(38) = "12"
TSTRING031(39) = "13"
TSTRING031(40) = "14"
TSTRING031(41) = "15"
TSTRING031(42) = "16"
TSTRING031(43) = "17"
TSTRING031(44) = "18"
TSTRING031(45) = "19"
For STRING032 = 1 To 45
AnsiPos TSTRING030(STRING032), TSTRING031(STRING032)
Print "@X0F" + Upper(TSTRING029(STRING032)) + ".PPE"
If (TINTEGER007(1) - 232 == -1) Then
Hangup
Endif
Next
STRING035 = "1"
STRING034 = "1"
STRING034 = STRING035
AnsiPos TSTRING030(STRING034), TSTRING031(STRING034)
Print "@X7F" + Upper(TSTRING029(STRING034)) + ".PPE"
:LABEL042
STRING033 = Inkey()
If (STRING033 <> "") Goto LABEL043
Goto LABEL042
:LABEL043
If (STRING033 == Chr(27)) Goto LABEL001
If (STRING033 == Chr(13)) Goto LABEL044
Select Case (STRING033)
Case "RIGHT"
STRING034 = STRING034 + 9
If (STRING034 > 45) Then
STRING034 = STRING034 - 45
Endif
Case "LEFT"
STRING034 = STRING034 - 9
If (STRING034 < 1) Then
STRING034 = STRING034 + 45
Endif
Case " "
STRING034 = STRING034 - 1
If (STRING034 < 1) Then
STRING034 = 45
Endif
Case "DOWN"
STRING034 = STRING034 + 1
If (STRING034 > 45) Then
STRING034 = 1
Endif
Case Else
Goto LABEL042
End Select
STRING035 = STRING034
STRING034 = STRING035
STRING034 = STRING034 + 9
If (STRING034 > 45) Then
STRING034 = STRING034 - 45
Endif
AnsiPos TSTRING030(STRING034), TSTRING031(STRING034)
Print "@X0F" + Upper(TSTRING029(STRING034)) + ".PPE"
STRING034 = STRING035
STRING034 = STRING034 - 9
If (STRING034 < 1) Then
STRING034 = STRING034 + 45
Endif
AnsiPos TSTRING030(STRING034), TSTRING031(STRING034)
Print "@X0F" + Upper(TSTRING029(STRING034)) + ".PPE"
STRING034 = STRING035
STRING034 = STRING034 - 1
If (STRING034 < 1) Then
STRING034 = 45
Endif
AnsiPos TSTRING030(STRING034), TSTRING031(STRING034)
Print "@X0F" + Upper(TSTRING029(STRING034)) + ".PPE"
STRING034 = STRING035
STRING034 = STRING034 + 1
If (STRING034 > 45) Then
STRING034 = 1
Endif
AnsiPos TSTRING030(STRING034), TSTRING031(STRING034)
Print "@X0F" + Upper(TSTRING029(STRING034)) + ".PPE"
STRING034 = STRING035
AnsiPos TSTRING030(STRING034), TSTRING031(STRING034)
Print "@X7F" + Upper(TSTRING029(STRING034)) + ".PPE"
Goto LABEL042
:LABEL044
Print "@X0F "
Cls
Call PPEPath() + TSTRING029(STRING034) + ".PPE"
Cls
End
;------------------------------------------------------------------------------
;
; Usage report (before postprocessing)
;
; ■ Statements used :
;
; 5 End
; 5 Cls
; 221 Goto
; 190 Let
; 55 Print
; 59 PrintLn
; 178 If
; 2 FCreate
; 2 FOpen
; 3 FClose
; 3 FGet
; 5 FPutLn
; 1 Hangup
; 18 InputStr
; 10 Gosub
; 10 Return
; 1 Shell
; 3 Call
; 70 AnsiPos
; 9 Sort
;
;
; ■ Functions used :
;
; 87 +
; 10 -
; 157 ==
; 21 <>
; 10 <
; 6 <=
; 6 >
; 12 >=
; 121 !
; 12 &&
; 22 ||
; 10 Upper()
; 4 Left()
; 1 Right()
; 7 Chr()
; 1 RTrim()
; 2 Trim()
; 3 Inkey()
; 18 Mask_Ascii()
; 8 PPEPath()
; 1 ReadLine()
; 1 ScrText()
;
;------------------------------------------------------------------------------
;
; Analysis flags : BSC
;
; B - Brute hangup ■ 1
; Program hangup without notification. This may be a good way to
; disconnect a user, but if used randomly, may be very nasty
; ■ Search for : HANGUP, DTROFF
;
; S - Shell to DOS ■ 5
; This may be normal if the PPE need to execute an external command,
; but may be actually anything... nasty (formating HD, rebooting,...)
; or usefull (sorting, maintenance,...). Check!
; ■ Search for : SHELL
;
; C - Call child PPE ■ 3
; This is usually normal, but may be a tricky way to launch some
; sysop-only commands.
; ■ Search for : CALL
;
;------------------------------------------------------------------------------
;
; Postprocessing report
;
; 6 For/Next
; 0 While/EndWhile
; 107 If/Then or If/Then/Else
; 2 Select Case
;
;------------------------------------------------------------------------------
; AEGiS Corp - Break the routines, code against the machines!
;------------------------------------------------------------------------------